package com.cn.web.menu.service;

import com.cn.menu.ButtonsDO;
import com.cn.menu.MenuDO;
import com.cn.role.RoleMenuDO;
import com.cn.web.menu.vo.MenuVO;

import java.util.List;

/**
 * description: MenuService <br>
 * date: 21.12.16 11:13 <br>
 * author: cn_yaojin <br>
 * version: 1.0 <br>
 */
public interface MenuService {


    ButtonsDO getButton(String button);

    void reloadButton();

    /**
     * 父级编号查询
     *
     * @param parentId
     * @return
     */
    List<MenuVO> listMenuByParentId(String parentId);

    /**
     * 查询所有菜单
     *
     * @return
     */
    List<MenuVO> listAllMenu();

    /**
     * 查询所有菜单（原始数据，没有层级结构）
     *
     * @param pd
     * @return
     */
    List<MenuVO> listAllMenuSource(Object pd);


    /**
     * 登录人查询自己的菜单
     *
     * @param userId
     * @return
     */
    List<MenuVO> listMenus(String userId);


    List<RoleMenuDO> listRoleMenus(String roleId);

    void edit(MenuDO info);

    void del(String id);

    MenuVO findById(String id);

}
